#ifndef _COMMON_Portii_H_
#define _COMMON_Portii_H_

namespace Common{

	const float PIXELS_PER_UNIT     = 80.0;
	const float DEFAULT_DENSITY     = 5.0f;
	const float DEFAULT_FRICTION    = 0.3f;
	const float DEFAULT_RESTITUTION = 0.1f;

	const float MAX_PORTII_SPEED    = 6.0f;
	const float MIN_PORTII_SPEED    = -6.0f;

	const int X_MENU_POS    = 190;
	
	const int WORLD_HEIGHT    = 2800;
	const int WORLD_WIDTH    = 2800;
	
	const int WORLD_DEAD_HEIGHT = 1400;
	const int UNDEFINED_SCORE = 9999999;
		
        const int MAX_CAKE_SLICES = 99;

        namespace Builder {
                enum Type {
                        START        = 0,
                        GROUND       = 1,
                        TRANS_GROUND = 2,
                        CAKE         = 3,
                        NON_PORTAL_WALL = 4,
                        DELETE = 5,
                        SIZE = 6
                };
        };
		
        namespace MyMenu {
                enum Type {
                        MAIN = 0,
						BUILDER = 1,
						SUB_BUILDER = 2,
						GAME = 3,
						SUB_GAME = 4,
						SUB_TEST = 5,
						WON_GAME = 6,
						SIZE = 7
                };
        };

        namespace GameMode {
                enum Type {
						STORY = 0,
                        TIMED = 1,
						PORTAL_COUNT = 2,
						FEWEST_STEPS = 3
                };
        };
		
        namespace Sound {
                enum Type {
                        INTRO = 0,
                        MAIN_BG_MUSIC = 1,
                        BUILDER_BG_MUSIC = 2,
                        GAME_BG_MUSIC = 3,
                        DELETE_FX = 4,
                        CREATE_FX = 5,
                        PORTAL_GUN_FX = 5,
                        PORTAL_ENTER_FX = 6,
                        PHYSICS_FALL_FX = 7,
                        MENU_CLICK_FX = 8,
                        STILL_ALIVE = 9,
                        STILL_DEAD = 10,
                        ENTER_TEST = 11,
                        DEAD_FX = 12,
                        TYPEWRITER1_FX = 13,
                        TYPEWRITER2_FX = 14,
                        TYPEWRITER3_FX = 15,
                        TYPEWRITER4_FX = 16,
                        BLOOP_FX = 17,
                        CAKE_FX = 18,
                        PORTII = 19,
                        SIZE = 20
                };
        };

        namespace Format {
                enum Type {
                        OGG = 0,
                        RAW = 1
                };
        };
		
		namespace NetMutex {
				enum Type {
					NET_CONNECTED = 0,
					CONNECTING,
					UPDATE_AVAIL,
					DO_UPDATE,
					UPDATE_COMPLETE,
					UPDATE_STATUS,
					SIZE
				};
		};
};

#endif
